package com.ht.pms.core.dto;

import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 
 * </p>
 *
 * @author 喻尊龙
 * @since 2019-01-24
 */
@ApiModel
@TableName("t_apply_reimbursement_log")
public class ApplyReimbursementLog extends Model<ApplyReimbursementLog> {

    private static final long serialVersionUID = 1L;

    /**
     * 主键  自增长
     */
	@ApiModelProperty(required= true,value = "主键  自增长")
	private Integer id;
    /**
     * 申请编号
     */
	@TableField("approve_id")
	@ApiModelProperty(required= true,value = "申请编号")
	private String approveId;
    /**
     * 流程编号
     */
	@TableField("process_id")
	@ApiModelProperty(required= true,value = "流程编号")
	private String processId;
    /**
     * 用户id
     */
	@TableField("user_id")
	@ApiModelProperty(required= true,value = "用户id")
	private String userId;
    /**
     * 用户姓名
     */
	@TableField("user_name")
	@ApiModelProperty(required= true,value = "用户姓名")
	private String userName;
    /**
     * 申请时间
     */
	@TableField("approve_time")
	@ApiModelProperty(required= true,value = "申请时间")
	private Date approveTime;
    /**
     * 审批结束时间
     */
	@TableField("approve_end_time")
	@ApiModelProperty(required= true,value = "审批结束时间")
	private Date approveEndTime;
    /**
     * 报销公司
     */
	@TableField("company_name")
	@ApiModelProperty(required= true,value = "报销公司")
	private String companyName;
    /**
     * 报销类型
     */
	@TableField("document_type")
	@ApiModelProperty(required= true,value = "报销类型")
	private String documentType;
    /**
     * 报销部门
     */
	@TableField("expense_department")
	@ApiModelProperty(required= true,value = "报销部门")
	private String expenseDepartment;
    /**
     * 收款单位
     */
	@ApiModelProperty(required= true,value = "收款单位")
	private String payee;
    /**
     * 附件数量
     */
	@TableField("attach_num")
	@ApiModelProperty(required= true,value = "附件数量")
	private Integer attachNum;
    /**
     * 审批状态 1 通过 0 不通过
     */
	@TableField("approve_status")
	@ApiModelProperty(required= true,value = "审批状态 1 通过 0 不通过")
	private Integer approveStatus;
    /**
     * 是否发送 1 已发送 0 未发送
     */
	@TableField("is_send")
	@ApiModelProperty(required= true,value = "是否发送 1 已发送 0 未发送")
	private Integer isSend;
    /**
     * 创建时间
     */
	@TableField("create_time")
	@ApiModelProperty(required= true,value = "创建时间")
	private Date createTime;
    /**
     * 更新时间
     */
	@TableField("update_time")
	@ApiModelProperty(required= true,value = "更新时间")
	private Date updateTime;
    /**
     * 总金额大写
     */
	@TableField("total_amount_big")
	@ApiModelProperty(required= true,value = "总金额大写")
	private String totalAmountBig;
    /**
     * 总金额
     */
	@TableField("total_amount")
	@ApiModelProperty(required= true,value = "总金额")
	private String totalAmount;
    /**
     * 生成的文件上传钉钉文件服务器获得的文件id
     */
	@TableField("data_code")
	@ApiModelProperty(required= true,value = "生成的文件上传钉钉文件服务器获得的文件id")
	private String dataCode;
    /**
     * 发送钉钉消息获得的消息id
     */
	@TableField("task_id")
	@ApiModelProperty(required= true,value = "发送钉钉消息获得的消息id")
	private String taskId;
    /**
     * 主体类型
     */
	@TableField("company_type")
	@ApiModelProperty(required= true,value = "主体类型")
	private String companyType;
	/**
	 * 流程类型编码
	 */
	@TableField("process_code")
	@ApiModelProperty(required= true,value = "流程类型编码")
	private String processCode;

	public Integer getId() {
		return id;
	}

	public void setId(Integer id) {
		this.id = id;
	}

	public String getApproveId() {
		return approveId;
	}

	public void setApproveId(String approveId) {
		this.approveId = approveId;
	}

	public String getProcessId() {
		return processId;
	}

	public void setProcessId(String processId) {
		this.processId = processId;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public String getUserName() {
		return userName;
	}

	public void setUserName(String userName) {
		this.userName = userName;
	}

	public Date getApproveTime() {
		return approveTime;
	}

	public void setApproveTime(Date approveTime) {
		this.approveTime = approveTime;
	}

	public Date getApproveEndTime() {
		return approveEndTime;
	}

	public void setApproveEndTime(Date approveEndTime) {
		this.approveEndTime = approveEndTime;
	}

	public String getCompanyName() {
		return companyName;
	}

	public void setCompanyName(String companyName) {
		this.companyName = companyName;
	}

	public String getDocumentType() {
		return documentType;
	}

	public void setDocumentType(String documentType) {
		this.documentType = documentType;
	}

	public String getExpenseDepartment() {
		return expenseDepartment;
	}

	public void setExpenseDepartment(String expenseDepartment) {
		this.expenseDepartment = expenseDepartment;
	}

	public String getPayee() {
		return payee;
	}

	public void setPayee(String payee) {
		this.payee = payee;
	}

	public Integer getAttachNum() {
		return attachNum;
	}

	public void setAttachNum(Integer attachNum) {
		this.attachNum = attachNum;
	}

	public Integer getApproveStatus() {
		return approveStatus;
	}

	public void setApproveStatus(Integer approveStatus) {
		this.approveStatus = approveStatus;
	}

	public Integer getIsSend() {
		return isSend;
	}

	public void setIsSend(Integer isSend) {
		this.isSend = isSend;
	}

	public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public String getTotalAmountBig() {
		return totalAmountBig;
	}

	public void setTotalAmountBig(String totalAmountBig) {
		this.totalAmountBig = totalAmountBig;
	}

	public String getTotalAmount() {
		return totalAmount;
	}

	public void setTotalAmount(String totalAmount) {
		this.totalAmount = totalAmount;
	}

	public String getDataCode() {
		return dataCode;
	}

	public void setDataCode(String dataCode) {
		this.dataCode = dataCode;
	}

	public String getTaskId() {
		return taskId;
	}

	public void setTaskId(String taskId) {
		this.taskId = taskId;
	}

	public String getCompanyType() {
		return companyType;
	}

	public void setCompanyType(String companyType) {
		this.companyType = companyType;
	}

	public String getProcessCode() {
		return processCode;
	}

	public void setProcessCode(String processCode) {
		this.processCode = processCode;
	}

	@Override
	protected Serializable pkVal() {
		return this.id;
	}

	@Override
	public String toString() {
		return "ApplyReimbursementLog{" +
				"id=" + id +
				", approveId='" + approveId + '\'' +
				", processId='" + processId + '\'' +
				", userId='" + userId + '\'' +
				", userName='" + userName + '\'' +
				", approveTime=" + approveTime +
				", approveEndTime=" + approveEndTime +
				", companyName='" + companyName + '\'' +
				", documentType='" + documentType + '\'' +
				", expenseDepartment='" + expenseDepartment + '\'' +
				", payee='" + payee + '\'' +
				", attachNum=" + attachNum +
				", approveStatus=" + approveStatus +
				", isSend=" + isSend +
				", createTime=" + createTime +
				", updateTime=" + updateTime +
				", totalAmountBig='" + totalAmountBig + '\'' +
				", totalAmount='" + totalAmount + '\'' +
				", dataCode='" + dataCode + '\'' +
				", taskId='" + taskId + '\'' +
				", companyType='" + companyType + '\'' +
				", processCode='" + processCode + '\'' +
				'}';
	}
}
